package com.nfit.shopweb.service;

import com.github.pagehelper.PageInfo;
import com.nfit.shopmodel.dto.product.ProductDto;
import com.nfit.shopmodel.entity.product.Product;

/**
 * ClassName:ProductService
 * Package:com.nfit.shopweb.service
 * Description
 *
 * @Author L
 * @Create 2024/12/17 10:57
 */
public interface ProductService {
    PageInfo<Product> page(Integer pageNum, Integer pageSize, ProductDto productDto);

    void update(Product product);

    void save(Product product);

    /**
     * 根据商品id查询商品信息
     * @param id 商品id
     */
    Product findById(Long id);

    void delete(Long id);

    /**
     * 审批商品
     * @param productId 商品id
     * @param auditStatus 审批状态，前端传 1 表示通过 -1 表示驳回
     */
    void updateAuditStatus(Long productId, Integer auditStatus);

    /**
     * 上下架商品
     * @param productId 商品id
     * @param status 上下架状态： 前端传 1 表示上架 -1 表示下架
     */
    void updateStatus(Long productId, Integer status);
}
